<?php
//Vérifie entièrement un formulaire
function checkAllForm(&$array){
    checkAllFormRequired($array);
}



/**
 *
 * @param tableau $array (tableau de champs a vérifier) de type $array['cle']('valeur', 'err', 'texte_erreur', 'recquis')
 * 
 */
function checkAllFormRequired(&$array){
    foreach($array as &$champ){
        if($champ['recquis'] == true && empty($champ['valeur']) && $champ['valeur'] != "0"){
            $champ['erreur'] = "Ce champs est recquis";
        }
    }
}

function check_CodePostal(&$champ){
    $regex_cp = "/^((0[1-9])|([1-8][0-9])|(9[0-8])|(2A)|(2B))[0-9]{3}$/";
    if(!filter_var($champ['valeur'], FILTER_VALIDATE_REGEXP, array('options' => array( 'regexp' => $regex_cp) ))){
        $champ['erreur'] = "Veuillez entrer un code postal valide";
    }
}

function check_Website(&$champ){
    if(!filter_var($champ['valeur'], FILTER_VALIDATE_URL)){
        $champ['erreur'] = "Veuillez entrer un site internet valide";
    }
}

function check_Abecedaire(&$champ){
    $regex_lettre = "/^([a-zA-Z]|[0-9]){1}$/";
    if(!filter_var($champ['valeur'], FILTER_VALIDATE_REGEXP, array('options' => array( 'regexp' => $regex_lettre)))){
        $champ['erreur'] = "Veuillez entrer une lettre ou un chiffre";
    }
}

function check_Date(&$champ){
    $regex_date = "#^[0-9]{2}[/][0-9]{2}[/]?[0-9]{4}$#";
    if(!filter_var($champ['valeur'], FILTER_VALIDATE_REGEXP, array('options' => array( 'regexp' => $regex_date) ))){
        $champ['erreur'] = "Veuillez entrer une date valide";
    }
}

function check_Date_Sans_Slashes(&$champ){
    $regex_date = "#^[0-9]{2}[0-9]{2}?[0-9]{4}$#";
    if(!filter_var($champ['valeur'], FILTER_VALIDATE_REGEXP, array('options' => array( 'regexp' => $regex_date) ))){
        $champ['erreur'] = "Veuillez entrer une date valide";
    }
}

function check_Date1_Superieur_Date2(&$champ1, &$champ2){
    $date_debut = new DateTime(Class_Date::getToMysqlSyntax($champ1['valeur']));
    $date_fin   = new DateTime(Class_Date::getToMysqlSyntax($champ2['valeur']));
    if($date_debut <= $date_fin == false){
        $champ2['erreur'] = "Veuillez entrer une date de fin supérieure";
    }
}

function check_FilePdf(&$champ){
    $extension = get_extension($champ['valeur']['name']);
    if(strtolower($extension) != 'pdf'){
        $champ['erreur'] = "Veuillez envoyer un fichier pdf";
    }
}
?>
